package uniandes.cupi2.musiteka.servidor.interfaz;

import java.awt.Color;
import java.awt.Font;
import java.awt.Frame;
import java.awt.Rectangle;
import java.util.ArrayList;

import javax.swing.BorderFactory;
import javax.swing.JButton;
import javax.swing.JDialog;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JTextArea;
import javax.swing.border.TitledBorder;

import uniandes.cupi2.musiteka.servidor.mundo.IMusiteka;
import uniandes.cupi2.musiteka.servidor.mundo.musiteka1.IteradorMusiteka1;
import uniandes.cupi2.musiteka.servidor.mundo.musiteka1.Musiteka;

import javax.swing.JList;

public class ListaUsuariosPorFecha extends JDialog {

	private static final long serialVersionUID = 1L;

	private JPanel jContentPane = null;

	private JPanel jPanelBotones = null;

	private JButton jButtonActualizar = null;

	private JButton jButtonCancelar = null;

	private JTextArea jTextAreaListaUsuariosFecha = null;

	private JScrollPane jScrollPaneListaUsuarios = null;

	private JList jListListaDeUsuarios = null;

	public IMusiteka mundo;
	/**
	 * @param owner
	 */
	public ListaUsuariosPorFecha(IMusiteka nMundo) {
		mundo= nMundo;
		super.setVisible(true);
		initialize();
	}

	/**
	 * This method initializes this
	 * 
	 * @return void
	 */
	private void initialize() {
		this.setSize(279, 339);
		this.setTitle("Lista Usuarios");
		this.setContentPane(getJContentPane());
	}

	/**
	 * This method initializes jContentPane
	 * 
	 * @return javax.swing.JPanel
	 */
	private JPanel getJContentPane() {
		if (jContentPane == null) {
			jContentPane = new JPanel();
			jContentPane.setLayout(null);
			jContentPane.add(getJPanelBotones(), null);
			jContentPane.add(getJScrollPaneListaUsuarios(), null);
		}
		return jContentPane;
	}

	/**
	 * This method initializes jPanelBotones	
	 * 	
	 * @return javax.swing.JPanel	
	 */
	private JPanel getJPanelBotones() {
		if (jPanelBotones == null) {
			jPanelBotones = new JPanel();
			jPanelBotones.setLayout(null);
			jPanelBotones.setBounds(new Rectangle(15, 225, 241, 61));
			jPanelBotones.setBorder(BorderFactory.createTitledBorder(null, "", TitledBorder.DEFAULT_JUSTIFICATION, TitledBorder.DEFAULT_POSITION, new Font("Dialog", Font.BOLD, 12), new Color(51, 51, 51)));
			jPanelBotones.add(getJButtonActualizar(), null);
			jPanelBotones.add(getJButtonCancelar(), null);
		}
		return jPanelBotones;
	}

	/**
	 * This method initializes jButtonActualizar	
	 * 	
	 * @return javax.swing.JButton	
	 */
	private JButton getJButtonActualizar() {
		if (jButtonActualizar == null) {
			jButtonActualizar = new JButton();
			jButtonActualizar.setBounds(new Rectangle(15, 15, 91, 31));
			jButtonActualizar.setText("Actualizar");
			jButtonActualizar.addActionListener(new java.awt.event.ActionListener() {
				public void actionPerformed(java.awt.event.ActionEvent e) {
					
					ArrayList lista = new ArrayList();
					
					IteradorMusiteka1 us =(IteradorMusiteka1) mundo.darUsuariosOrdenadosPorfechaIngreso();
					
					while(us.haySiguiente())
					{
						lista.add(us.darSiguiente());
					}
					jListListaDeUsuarios.setListData(lista.toArray());
					
				}
			});
	}
		return jButtonActualizar;
	}

	/**
	 * This method initializes jButtonCancelar	
	 * 	
	 * @return javax.swing.JButton	
	 */
	private JButton getJButtonCancelar() {
		if (jButtonCancelar == null) {
			jButtonCancelar = new JButton();
			jButtonCancelar.setBounds(new Rectangle(135, 15, 91, 31));
			jButtonCancelar.setText("Cancelar");
			jButtonCancelar.addActionListener(new java.awt.event.ActionListener() {
				public void actionPerformed(java.awt.event.ActionEvent e) {
					dispose();
					System.out.println("actionPerformed()"); // TODO Auto-generated Event stub actionPerformed()
				}
			});
		}
		return jButtonCancelar;
	}

	/**
	 * This method initializes jScrollPaneListaUsuarios	
	 * 	
	 * @return javax.swing.JScrollPane	
	 */
	private JScrollPane getJScrollPaneListaUsuarios() {
		if (jScrollPaneListaUsuarios == null) {
			jScrollPaneListaUsuarios = new JScrollPane();
			jScrollPaneListaUsuarios.setBounds(new Rectangle(15, 15, 241, 196));
			jScrollPaneListaUsuarios.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_ALWAYS);
			jScrollPaneListaUsuarios.setViewportView(getJListListaDeUsuarios());
			jScrollPaneListaUsuarios.setBorder(BorderFactory.createTitledBorder(null, "Lista de los usuarios", TitledBorder.DEFAULT_JUSTIFICATION, TitledBorder.DEFAULT_POSITION, new Font("Dialog", Font.BOLD, 12), new Color(51, 51, 51)));
		}
		return jScrollPaneListaUsuarios;
	}

	/**
	 * This method initializes jListListaDeUsuarios	
	 * 	
	 * @return javax.swing.JList	
	 */
	private JList getJListListaDeUsuarios() {
		if (jListListaDeUsuarios == null) {
			jListListaDeUsuarios = new JList();
		}
		return jListListaDeUsuarios;
	}

	

}  //  @jve:decl-index=0:visual-constraint="10,10"
